﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using Newtonsoft.Json;

namespace tcm.response
{
    public class Result
    {
        public long id { get; set; }

        // 返回结果 0成功 1 失败
        public int code { get; set; }

        // 返回成功描述或者失败原因
        public String msg { get; set; }
    }

    public class ApiResult
    {
        public int code { get; set; } 
        public string msg { get; set; } 
        /// <summary>
        /// 如果data值为null，则忽略序列化将不会返回data字段
        /// </summary>
        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
        public object data { get; set; }

        /// <summary>
        /// 初始化一个新创建的APIResult对象，使其表示一个空消息
        /// </summary>
        public ApiResult()
        {

        }
        /// <summary>
        /// 初始化一个新创建的 ApiResult 对象
        /// </summary>
        /// <param name="code"></param>
        /// <param name="msg"></param>
        public ApiResult(int code, string msg)
        {
            this.code = code;
            this.msg = msg;
        }

        /// <summary>
        /// 初始化一个新创建的 ApiResult 对象
        /// </summary>
        /// <param name="code"></param>
        /// <param name="msg"></param>
        public ApiResult(int code, string msg, object data)
        {
            this.code = code;
            this.msg = msg;
            if (data != null)
            {
                this.data = data;
            }
        }


    }
 
}
